<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    // 数组的拓展方法  => 官方封装的操作数组的方法

    // 学习数组的拓展方法需要注意哪些问题?
    // 1. 记住方法的作用
    // 2. 方法的返回值
    // 3. 是否影响原数组  => (1. 有些方法 直接操作原数组  2. 有些方法 根据原数组 得到新数组)

    // 数组的增删改查
    // push() 在数组的尾部添加一个或多个元素 
    // 返回值: 新增元素后数组的长度
    // 是否影响原数组: 影响

    var arr = ["a","b","c"];
    
    // var result = arr.push(100);
    var result = arr.push(100,200,300);
    console.log(result);
    console.log(arr);


    // unshift() 在数组的头部添加一个或多个元素 
    // 返回值: 新增元素后数组的长度
    // 是否影响原数组: 影响

    var arr = ["a","b","c"];
    // var result = arr.unshift(100);
    var result = arr.unshift(100,200,300);
    console.log(result);
    console.log(arr);

    // pop()   在数组的尾部删除一个元素
    // 返回值: 被删除的元素
    // 是否影响原数组: 影响

    var arr =  ["a","b","c","d"];
    var result = arr.pop();
    console.log(result);  // "d"
    console.log(arr);     // ["a","b","c"]

    var result = arr.pop();
    console.log(result);  // "c"
    console.log(arr);     // ["a","b"]

    // shift()   在数组的头部删除一个元素
    // 返回值: 被删除的元素
    // 是否影响原数组: 影响

    var arr =  ["a","b","c","d"];
    var result = arr.shift();
    console.log(result);
    console.log(arr);


</script>
</html>